// 入口函数
$(function () {
    let form = layui.form
    //  需求1 : 正则  设置填写昵称规则
    form.verify({
        nickname: [
            /^[\S]{1,10}$/
            , '密码必须1到10位，且不能出现空格'
        ]
    })

    // 需求2:渲染用户信息 - 封装成函数,因为后面还要用
    // 调用函数
    initUserInfo()
    function initUserInfo() {
        axios({
            url: '/my/userinfo'
        }).then(function (res) {
            // 获取用户信息res
            // console.log(res);

            // 判断
            if (res.data.status !== 0) {
                return layer.msg(res.data.message)
            }

            // 根据官网 为form表单赋值
            // 内置模块 -- 表单 -- 表单赋值/取值
            form.val('formUserInfo', res.data.data)
        })
    }

    // 需求3 : 重置功能
    // 两种方法  form的reset事件  或者 重置按钮的点击事件
    // $('form').on('reset', function (e) {
    $('#btnReset').on('click', function (e) {
        // 阻止默认提交行为
        e.preventDefault()
        // 重新渲染表单
        initUserInfo()
    })

    // 需求4 : 修改用户信息
    $('form').on('submit', function (e) {
        e.preventDefault()
        axios({
            method: 'POST',
            url: '/my/userinfo',
            // 设置了 参数 ,根据参数类型设置头信息 a=1&b=2&c=3
            // content-type : application/x-www-form-urlencoded
            data: $(this).serialize()
        }).then(function (res) {
            // console.log(res);
            if (res.data.status !== 0) {
                return layer.msg(res.data.message)
            }
            layer.msg('修改成功!')
            window.parent.getUserInfo()
        })
    })

})